Cookie Banners: Understanding Consent Requirements & Avoiding Dark Patterns